package com.kehutong.payment.entity;

import java.time.LocalDateTime;

import org.coraframework.orm.annotation.Column;
import org.coraframework.orm.annotation.Table;

@Table(value = "t_third_order", comment="第三方支付订单")
public class ThirdOrder extends BaseThirdOrder {

    private static final long serialVersionUID = 7965903623204222001L;

    protected ThirdOrder(String id) {
        super(id);
    }

    @Column(comment = "商户订单号")
    private String subOrderNo;
    @Column(comment = "支付平台订单号")
    private String outSn;
    @Column(comment = "支付状态")
    private boolean paid;
    @Column(comment = "支付时间")
    private LocalDateTime payTime;
    @Column(comment = "付款用户：微信收款码为对应用户的openid；支付宝收款码为临时生成的身份标识ID")
    private String payerUser;
    @Column(comment = "付款用户IP地址")
    private String ip;
    @Column(comment = "付款银行")
    private String bankType;
    @Column(comment = "透传字段", length = 128)
    private String attach;
    @Column(comment = "退款状态，0：未退款，1：部份退款，2：全部退款", name = "refund_status")
    private int refundStatus;

    public int getRefundStatus() {
        return refundStatus;
    }

    public void setRefundStatus(int refundStatus) {
        this.refundStatus = refundStatus;
    }

    public String getSubOrderNo() {
        return subOrderNo;
    }

    public void setSubOrderNo(String subOrderNo) {
        this.subOrderNo = subOrderNo;
    }

    public String getOutSn() {
        return outSn;
    }

    public void setOutSn(String outSn) {
        this.outSn = outSn;
    }
    
    public boolean isPaid() {
        return paid;
    }

    public void setPaid(boolean paid) {
        this.paid = paid;
    }

    public LocalDateTime getPayTime() {
        return payTime;
    }

    public void setPayTime(LocalDateTime payTime) {
        this.payTime = payTime;
    }

    public String getPayerUser() {
        return payerUser;
    }

    public void setPayerUser(String payerUser) {
        this.payerUser = payerUser;
    }

    public String getIp() {
        return ip;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public String getBankType() {
        return bankType;
    }

    public void setBankType(String bankType) {
        this.bankType = bankType;
    }

    public String getAttach() {
        return attach;
    }

    public void setAttach(String attach) {
        this.attach = attach;
    }

}
